<template>
    <div class="goods-list">
        <!-- <router-link class="goods-item" 
            v-for="item in goodslist" :key="item.id"
            :to="'/home/goodsInfo/:'+item.id"
            tag="div">
            <img :src="item.img_url">
            <h1 class="title">
                {{item.title}}
            </h1>
            <div class="info">
                <p class="price">
                    <span class="now">
                        ￥{{item.sell_price}}
                    </span>
                    <span class="old">
                        ￥{{item.market_price}}
                    </span>
                </p>
                <p class="sell">
                    <span>热卖中</span>
                    <span>剩{{item.stock_quantity}}件</span>
                </p>
            </div>
        </router-link> -->
        <!-- 路由的高级玩法
            方式一：使用a标签的形式，称为标签跳转
            方式二：使用window.location.href的形式，称为编程式导航
         -->
        <div class="goods-item" 
            v-for="item in goodslist" :key="item.id"
            @click="goDetail(item.id)">
            <img :src="item.img_url">
            <h1 class="title">
                {{item.title}}
            </h1>
            <div class="info">
                <p class="price">
                    <span class="now">
                        ￥{{item.sell_price}}
                    </span>
                    <span class="old">
                        ￥{{item.market_price}}
                    </span>
                </p>
                <p class="sell">
                    <span>热卖中</span>
                    <span>剩{{item.stock_quantity}}件</span>
                </p>
            </div>
        </div>
        <mt-button type="danger" size="large" @click="getMore">加载更多</mt-button>
    </div>
</template>

<script>
import {Toast} from 'mint-ui';
export default {
    data(){
        //data是往自己组建内部，挂载一些私有数据的
        return {
            pageindex:1, //分页的页数
            goodslist:[] //存放商品列表的数组
        }
    },
    created(){
        this.getGoodslIst();
    },
    methods:{
        getGoodslIst(){
            //获取商品列表
            this.$http.get('getgoods?pageindex='+this.pageindex).then(res => {
                if(res.body.status === 0){
                    this.goodslist = this.goodslist.concat(res.body.message);
                }else{
                    Toast("获取商品列表失败！");
                }
            })
        },
        getMore(){
            this.pageindex++;
            this.getGoodslIst();
        },
        goDetail(id){
            //使用js的形式实现路由的跳转
            /**
             * 注意：一定要区分this.$route和this.$router
             * 1、this.$route：是路由【参数对象】，所有路由中的参数，params,query都属于它。
             * 2、this.$router：是一个【路由导航对象】，用它可以方便的使用JS代码，实现路由的前进、后退、跳转到新的URL地址
             */
            //方式一：字符串
            //this.$router.push('/home/goodsInfo/'+id);
            //方式二：对象
            //this.$router.push({path:'/home/goodsInfo/'+id});
            //方式三：命名的路由  name为路由名称
            this.$router.push({ name: 'goodsInfo', params: { id: id }})
        }
    }
}
</script>

<style lang="scss" scoped>
    .goods-list{
        display: flex;
        flex-wrap: wrap;
        padding: 8px;
        justify-content: space-between;
        .goods-item{
            width: 49%;
            border: 1px solid #ccc;
            box-shadow: 0 0 8px #ccc;
            margin: 4px 0;
            padding: 2px;
            display: flex;
            /* 改变主轴的方向为纵向，让每一项的盒子贴上下边对齐 */
            flex-direction: column;
            justify-content: space-between;
            min-height: 293px;
            img{
                width: 100%;
            }
            .title{
                font-size: 14px;
                /* overflow: hidden;
                white-space: nowrap; */
            }
        }

        .info{
            background-color: #eee;
            p{
                margin: 0;
                padding: 5px;
            }
            .price{

                .now{
                    color: red;
                    font-weight: bold;
                    font-size: 16px;;
                }
                .old{
                    text-decoration: line-through;
                    font-size: 12px;
                    margin-left: 10px;
                }
            }
            .sell{
                display: flex;
                justify-content: space-between;
                font-size: 12px;
            }
        }
    }
</style>